﻿using System;
using System.Collections;
using System.Linq;
using System.Windows.Forms;

namespace SpeakerRecognition
{
    static class Program
    {
        /// <summary>
        /// The main entry point for the application.
        /// </summary>
        [STAThread]
        static void Main()
        {
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
            Application.Run(new Form_Main());


            //UnitTest.TestAverageFramesCommand();
            //UnitTest.TestCreateFramesCommand();
            //UnitTest.TestPreEmphasisCommand();
            //UnitTest.TestFFTCommand();
            //String wavFile = "C:\\Oded.wav";
            //FeatureExtractorData[] dataVectors = new FeatureExtractorData[8];
            //ArrayList dataToPAM = new ArrayList();

            //String wavFile = "C:\\s1.wav";
            //dataVectors[0] = UnitTest.TestFeatureExtractionModule(wavFile);
            //wavFile = "C:\\s2.wav";
            //dataVectors[1] = UnitTest.TestFeatureExtractionModule(wavFile);
            //wavFile = "C:\\s3.wav";
            //dataVectors[2] = UnitTest.TestFeatureExtractionModule(wavFile);
            //wavFile = "C:\\o1.wav";
            //dataVectors[3] = UnitTest.TestFeatureExtractionModule(wavFile);
            //wavFile = "C:\\o2.wav";
            //dataVectors[4] = UnitTest.TestFeatureExtractionModule(wavFile);
            //wavFile = "C:\\o3.wav";
            //dataVectors[5] = UnitTest.TestFeatureExtractionModule(wavFile);
            //wavFile = "C:\\m1.wav";
            //dataVectors[6] = UnitTest.TestFeatureExtractionModule(wavFile);
            //wavFile = "C:\\m2.wav";
            //dataVectors[7] = UnitTest.TestFeatureExtractionModule(wavFile);
            ////wavFile = "C:\\m3.wav";
            ////dataVectors[8] = UnitTest.TestFeatureExtractionModule(wavFile);

            //for (int i = 0; i < 8; i++)
            //    dataToPAM.Add(dataVectors[i].IfftData);
            //UnitTest.featureMatchingTest(dataToPAM);

            //wavFile = "C:\\oded1.wav";
            //UnitTest.TestFeatureExtractionModule(wavFile);
            //wavFile = "C:\\oded2.wav";
            //UnitTest.TestFeatureExtractionModule(wavFile);
            //wavFile = "C:\\oded3.wav";
            //UnitTest.TestFeatureExtractionModule(wavFile);
            //UnitTest.TestLogEnergyMagnitudeCommand();
            //UnitTest.TestWavProcessor();
            //double[] input = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17 };
            //double dif = FFT.(input);
            //Console.WriteLine(dif);
            //String wavfile = "c:\\test.wav";
            //clsWaveProcessor del = new clsWaveProcessor();
            //del.StripSilence(wavfile);
        }
    }
}
